FrameLib  0.1
Arbitrarily timed and sized frame-based DSP
FrameLib_DSP Class Referenceabstract

#include <FrameLib_DSP.h>

Inheritance diagram for FrameLib_DSP:
FrameLib_Block FrameLib_Object< FrameLib_Block > FrameLib_Info FrameLib_AudioInput FrameLib_AudioOutput FrameLib_Processor FrameLib_Scheduler

Classes

struct  SchedulerInfo
 

Public Member Functions

 FrameLib_DSP (ObjectType type, FrameLib_Context context, FrameLib_Parameters::Info *info, unsigned long nIns, unsigned long nOuts, unsigned long nAudioChans=0)
 
 ~FrameLib_DSP ()
 
virtual void setFixedInput (unsigned long idx, double *input, unsigned long size)
 
virtual void blockUpdate (double **ins, double **outs, unsigned long blockSize)
 
virtual void reset (double samplingRate, unsigned long maxBlockSize)
 
virtual void deleteConnection (unsigned long inIdx)
 
virtual void addConnection (FrameLib_DSP *object, unsigned long outIdx, unsigned long inIdx)
 
virtual void clearConnections ()
 
virtual bool isConnected (unsigned long inIdx)
 
virtual const FrameLib_ParametersgetParameters ()
 
virtual FrameType inputType (unsigned long idx)
 
virtual FrameType outputType (unsigned long idx)
 
- Public Member Functions inherited from FrameLib_Block
 FrameLib_Block (ObjectType type)
 
virtual ~FrameLib_Block ()
 
virtual void addConnection (FrameLib_Block *object, unsigned long outIdx, unsigned long inIdx)
 
- Public Member Functions inherited from FrameLib_Object< FrameLib_Block >
 FrameLib_Object (ObjectType type)
 
virtual ~FrameLib_Object ()
 
ObjectType getType ()
 
void setIO (unsigned long nIns, unsigned long nOuts, unsigned long nAudioChans=0)
 
unsigned long getNumIns ()
 
unsigned long getNumOuts ()
 
unsigned long getNumAudioIns ()
 
unsigned long getNumAudioOuts ()
 
unsigned long getNumAudioChans ()
 
virtual std::string objectInfo (bool verbose=false)
 
virtual std::string inputInfo (unsigned long idx, bool verbose=false)
 
virtual std::string outputInfo (unsigned long idx, bool verbose=false)
 
virtual std::string audioInfo (unsigned long idx, bool verbose=false)
 

Protected Member Functions

void setIO (unsigned long nIns, unsigned long nOuts, unsigned long nAudioChans=0)
 
void inputMode (unsigned long idx, bool update, bool trigger, bool switchable, FrameType type=kFrameNormal)
 
void setParameterInput (unsigned long idx)
 
void addParameterInput ()
 
void outputMode (unsigned long idx, FrameType type)
 
void updateTrigger (unsigned long idx, bool trigger)
 
bool isTrigger (unsigned long idx)
 
FrameLib_TimeFormat getFrameTime ()
 
FrameLib_TimeFormat getValidTime ()
 
FrameLib_TimeFormat getInputTime ()
 
FrameLib_TimeFormat getCurrentTime ()
 
FrameLib_TimeFormat getBlockStartTime ()
 
FrameLib_TimeFormat getBlockEndTime ()
 
FrameLib_TimeFormat getInputFrameTime (unsigned long idx)
 
FrameLib_TimeFormat getInputValidTime (unsigned long idx)
 
void requestOutputSize (unsigned long idx, size_t size)
 
bool allocateOutputs ()
 
double * getInput (unsigned long idx, size_t *size)
 
FrameLib_Parameters::SerialgetInput (unsigned long idx)
 
double * getOutput (unsigned long idx, size_t *size)
 
FrameLib_Parameters::SerialgetOutput (unsigned long idx)
 
void copyVector (double *output, double *input, unsigned long size)
 
void zeroVector (double *output, unsigned long size)
 
FrameLib_DSPgetOutputObject (unsigned long outIdx)
 
- Protected Member Functions inherited from FrameLib_Info
const char * getInfo (const char *verboseStr, const char *briefStr, bool verbose)
 
std::string getInfo (const char *verboseStr, const char *briefStr, unsigned long idx, bool verbose)
 
std::string getInfo (const char *verboseStr, const char *briefStr, const char *replaceStr, bool verbose)
 

Protected Attributes

double mSamplingRate
 
unsigned long mMaxBlockSize
 
FrameLib_Context::Allocator mAllocator
 
FrameLib_Parameters mParameters
 

Friends

class FrameLib_DSPQueue
 

Additional Inherited Members

- Static Public Member Functions inherited from FrameLib_Object< FrameLib_Block >
static bool handlesAudio ()
 

Constructor & Destructor Documentation

◆ FrameLib_DSP()

FrameLib_DSP::FrameLib_DSP ( ObjectType  type,
FrameLib_Context  context,
FrameLib_Parameters::Info info,
unsigned long  nIns,
unsigned long  nOuts,
unsigned long  nAudioChans = 0 
)

◆ ~FrameLib_DSP()

FrameLib_DSP::~FrameLib_DSP ( )

Member Function Documentation

◆ addConnection()

void FrameLib_DSP::addConnection ( FrameLib_DSP object,
unsigned long  outIdx,
unsigned long  inIdx 
)
virtual

Implements FrameLib_Block.

◆ addParameterInput()

void FrameLib_DSP::addParameterInput ( )
protected

◆ allocateOutputs()

bool FrameLib_DSP::allocateOutputs ( )
protected

◆ blockUpdate()

void FrameLib_DSP::blockUpdate ( double **  ins,
double **  outs,
unsigned long  blockSize 
)
virtual

◆ clearConnections()

void FrameLib_DSP::clearConnections ( )
virtual

◆ copyVector()

void FrameLib_DSP::copyVector ( double *  output,
double *  input,
unsigned long  size 
)
inlineprotected

◆ deleteConnection()

void FrameLib_DSP::deleteConnection ( unsigned long  inIdx)
virtual

◆ getBlockEndTime()

FrameLib_TimeFormat FrameLib_DSP::getBlockEndTime ( )
inlineprotected

◆ getBlockStartTime()

FrameLib_TimeFormat FrameLib_DSP::getBlockStartTime ( )
inlineprotected

◆ getCurrentTime()

FrameLib_TimeFormat FrameLib_DSP::getCurrentTime ( )
inlineprotected

◆ getFrameTime()

FrameLib_TimeFormat FrameLib_DSP::getFrameTime ( )
inlineprotected

◆ getInput() [1/2]

double * FrameLib_DSP::getInput ( unsigned long  idx,
size_t *  size 
)
protected

◆ getInput() [2/2]

FrameLib_Parameters::Serial * FrameLib_DSP::getInput ( unsigned long  idx)
protected

◆ getInputFrameTime()

FrameLib_TimeFormat FrameLib_DSP::getInputFrameTime ( unsigned long  idx)
inlineprotected

◆ getInputTime()

FrameLib_TimeFormat FrameLib_DSP::getInputTime ( )
inlineprotected

◆ getInputValidTime()

FrameLib_TimeFormat FrameLib_DSP::getInputValidTime ( unsigned long  idx)
inlineprotected

◆ getOutput() [1/2]

double * FrameLib_DSP::getOutput ( unsigned long  idx,
size_t *  size 
)
protected

◆ getOutput() [2/2]

FrameLib_Parameters::Serial * FrameLib_DSP::getOutput ( unsigned long  idx)
protected

◆ getOutputObject()

FrameLib_DSP* FrameLib_DSP::getOutputObject ( unsigned long  outIdx)
inlineprotectedvirtual

Implements FrameLib_Block.

◆ getParameters()

virtual const FrameLib_Parameters* FrameLib_DSP::getParameters ( )
inlinevirtual

Reimplemented from FrameLib_Object< FrameLib_Block >.

◆ getValidTime()

FrameLib_TimeFormat FrameLib_DSP::getValidTime ( )
inlineprotected

◆ inputMode()

void FrameLib_DSP::inputMode ( unsigned long  idx,
bool  update,
bool  trigger,
bool  switchable,
FrameType  type = kFrameNormal 
)
protected

◆ inputType()

virtual FrameType FrameLib_DSP::inputType ( unsigned long  idx)
inlinevirtual

◆ isConnected()

bool FrameLib_DSP::isConnected ( unsigned long  inIdx)
virtual

◆ isTrigger()

bool FrameLib_DSP::isTrigger ( unsigned long  idx)
inlineprotected

◆ outputMode()

void FrameLib_DSP::outputMode ( unsigned long  idx,
FrameType  type 
)
protected

◆ outputType()

virtual FrameType FrameLib_DSP::outputType ( unsigned long  idx)
inlinevirtual

◆ requestOutputSize()

void FrameLib_DSP::requestOutputSize ( unsigned long  idx,
size_t  size 
)
inlineprotected

◆ reset()

void FrameLib_DSP::reset ( double  samplingRate,
unsigned long  maxBlockSize 
)
virtual

◆ setFixedInput()

void FrameLib_DSP::setFixedInput ( unsigned long  idx,
double *  input,
unsigned long  size 
)
virtual

◆ setIO()

void FrameLib_DSP::setIO ( unsigned long  nIns,
unsigned long  nOuts,
unsigned long  nAudioChans = 0 
)
protected

◆ setParameterInput()

void FrameLib_DSP::setParameterInput ( unsigned long  idx)
protected

◆ updateTrigger()

void FrameLib_DSP::updateTrigger ( unsigned long  idx,
bool  trigger 
)
protected

◆ zeroVector()

void FrameLib_DSP::zeroVector ( double *  output,
unsigned long  size 
)
inlineprotected

Friends And Related Function Documentation

◆ FrameLib_DSPQueue

friend class FrameLib_DSPQueue
friend

Member Data Documentation

◆ mAllocator

FrameLib_Context::Allocator FrameLib_DSP::mAllocator
protected

◆ mMaxBlockSize

unsigned long FrameLib_DSP::mMaxBlockSize
protected

◆ mParameters

FrameLib_Parameters FrameLib_DSP::mParameters
protected

◆ mSamplingRate

double FrameLib_DSP::mSamplingRate
protected

The documentation for this class was generated from the following files: